Prueba Data Scientist - Rappi

Daniela Carolina Sanabria

25/09/2022

En esta prueba se construyen diferentes modelos de machine learning para predecir el precio de la vivienda con base en características propias y en su ubicación.

1. Análisis exploratorio

Tenemos 18.448 observaciones y 16 columnas. Los datos están en formatos númerico enteros o flotantes.

Aparentemente no hay datos faltantes.

La distribución de la mayoría de variables hace sentido, pero se evidencian observaciones en las que el número de habitaciones y el número de baños es de cero. Lo más probable es que esos sean en realidad datos faltantes.

Teniendo en cuenta las características de las viviendas con cero habitaciones o cero baños según los datos originales, se confirma que son datos faltantes. Por ejemplo, no es probable que una vivienda de 3.5 pisos y 3064 Ft2 (284 M2) no tenga habitaciones ni baños. Teniendo en cuenta que las observaciones con estos datos faltantes son solo 12 en unos datos con 18.448 observaciones, la eliminación de estas no tendrá mayor impacto en el desempeño predictivo de los modelos. Así pues, se toma la decisión de eliminarlas.

Como resultado de este análisis exploratorio, se resalta los siguiente:

Feature Engineering

La ubicación es un elemento clave para predecir el precio de la vivienda. Una vivienda de características muy similares puede tener un precio diferente a otra solo por estar en una ciudad o un estado diferente.

Teniendo en cuenta que el código ZIP no necesariamente es ordinal sino categórica y tiene 70 valores diferentes, se extraerá la ciudad y el estado de la vivienda. Predecir con la ciudad nos permitirá tener menor dimensionalidad en el modelo.

Se evidencia que todas las observaciones son del estado de Washington, pertenecientes a 24 ciudades. Las ciudades serán variable categórica en nuestro modelo, y teniendo en cuenta el número de ciudades, se decidirá un método de codificación One Hot Encoding

Entrenamiento del modelo

Se entrenarán múliples algoritmos y se irán añadiendo los resultados a un DataFrame.

Random Forest

Support Vector Machines

XGBoost

LightGBM

ADA Boost

KNeighborsRegressor

Multilayer Perceptron

Conclusión del ejercicio

El mejor resultado fue el del modelo LightGBM, con un R2 de 89% y un RMSE de 122.527 USD. Para otros ejercicios, los resultados podrían mejorarse haciendo más iteraciones de los hiperparámetros de todos los modelos. El peor resultado fue el del Support Vector Machines, lo cual puede explicarse por el número de features que se incluyen en este modelo y porque no se incluyeron otros parámetros en la grilla.